<?php
/////////////////////////////////////////////////////
/// 函数名称：gen_list
/// 函数作用：产生静态的最新的文章列表页面
/// 函数作者: DH
/// 作者地址: http://linkyou.org/ 
/////////////////////////////////////////////////////

header('Content-Type:text/html;charset= UTF-8'); 

#需要使用的基础函数
include("../config.php");

//phpinfo();
$logdir=".";
$zipfile='log.zip';
//$zipsendfile='log'.date("Ymd_H_i_s").'.zip';
$error = dh_gen_log_file($zipfile,$logdir);
echo $error;
//postmail_log('zhonghua0747@gmail.com',$zipfile,$error);

function dh_gen_log_file($zipfile,$logdir)
{
	$error = '';
	$zip = new ZipArchive; //首先实例化这个类
	if ($zip->open($zipfile,ZipArchive::OVERWRITE) === TRUE) 
	{
		$handle = @opendir($logdir) or die("Cannot open " . $logdir);
		// 用 readdir 读出文件列表
		while($file = readdir($handle))
		{
			// 将 "." 及 ".." 排除不显示
			if(strstr($file,'.log'))
			{
				$DH_output = dh_file_get_contents($file);
				$match=array();
				preg_match('/error|Notice|Fatal|Warning/i',$DH_output,$match);
				//print_r($match);
				if(!empty($match[0]))
				{
					$error.='<div>'.$file.'-->'. $match[0].'</div>';
				}
				$zip->addFile($file);
			}
		}
		// 关闭目录读取
		closedir($handle);
		$zip->close(); //关闭
	}
	else
	{
		echo 'zip log failed';
	}
	return $error;
}

function postmail_log($to,$zipfile,$error)
{
    //$to 表示收件人地址 $subject 表示邮件标题 $body 表示邮件正文
    //error_reporting(E_ALL);
    //error_reporting(E_STRICT);
    date_default_timezone_set("Asia/Shanghai");//设定时区东八区
    require_once('../backup/class-phpmailer.php');	
	$mail = new PHPMailer(); //new一个PHPMailer对象出来
//    $body = eregi_replace("[\]",'',$body); //对邮件内容进行必要的过滤
    $mail->CharSet ="UTF-8";//设定邮件编码，默认ISO-8859-1，如果发中文此项必须设置，否则乱码
    $mail->IsSMTP(); // 设定使用SMTP服务
    $mail->SMTPDebug  = 1; // 启用SMTP调试功能 1 = errors and messages  2 = messages only
    $mail->SMTPAuth   = true;                  // 启用 SMTP 验证功能
    $mail->SMTPSecure = "ssl";                 // 安全协议
    $mail->Host       = "smtp.gmail.com";      // SMTP 服务器
    $mail->Port       = 465;                   // SMTP服务器的端口号
    $mail->Username   = "xzhh0747";  // SMTP服务器用户名
    $mail->Password   = "19850523";            // SMTP服务器密码
    $mail->SetFrom('tech@movie002.com', 'movie002.com');
    $mail->AddReplyTo("tech@movie002.com","movie002.com");
    $mail->Subject    = "movie002.com 的系统运行日志 ".gmdate('Ymd_H_i_s', time());
    $mail->AltBody    = "To view the message, please use an HTML compatible email viewer! - From movie002.com"; // optional, comment out and test
//    $mail->MsgHTML($body);
	$mail->Body="All error log file is :" .$error;
    $address = $to;
    $mail->AddAddress($address, "收件人名称");
	$mail->AddAttachment($zipfile);      // attachment 		
    if(!$mail->Send())
	{
        echo "Mailer Error: " . $mail->ErrorInfo;
    }
	else
	{
        echo "Message sent!恭喜，邮件发送成功！";
    }
}